/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.proyecto.datos;

import java.sql.*;

import java.util.ArrayList;

/**
 *
 * @author mario
 */
public class EntityAlumno implements OperacionesDB {

    private int id_alumno;
    private String nombres;
    private String apellidos;
    private String carnet;
    private int id_carrera;
    private String entCarrera;

    public EntityAlumno() {
    }

    public EntityAlumno(int id_alumno, String nombres, String apellidos, String carnet, String entCarrera) {

        this.id_alumno = id_alumno;
        this.nombres = nombres;
        this.apellidos = apellidos;
        this.carnet = carnet;
        this.entCarrera = entCarrera;

    }

//    AQUI EMPIEZAN LOS GETTER Y SETTERS
    public String getNombres() {
        return nombres;
    }

    public void setNombres(String nombres) {
        this.nombres = nombres;
    }

    public String getApellidos() {
        return apellidos;
    }

    public void setApellidos(String apellidos) {
        this.apellidos = apellidos;
    }

    public String getCarnet() {
        return carnet;
    }

    public void setCarnet(String carnet) {
        this.carnet = carnet;
    }
    
     public int getId_alumno() {
        return id_alumno;
    }

    public void setId_alumno(int id_alumno) {
        this.id_alumno = id_alumno;
    }

    public String getEntCarrera() {
        return entCarrera;
    }

    public void setEntCarrera(String entCarrera) {
        this.entCarrera = entCarrera;
    }

    @Override
    public String EjecutarComando(String cadenaSQL) {
        Connection cn;
        Statement st;
        String msj;
        try {
            ConnDB db = new ConnDB();
            Class.forName(db.getDriver());
            cn = DriverManager.getConnection(db.getCadenaCon(), db.getUsuario(), db.getContrasenna());
            st = cn.createStatement();
            st.execute(cadenaSQL);
            st.close();
            cn.close();
            msj = "Comando ejecutado con exito";
        } catch (Exception ex) {
            msj = "El comando no pudo ser ejecutado";
            System.out.println(ex.toString());
        }
        return msj;

    }

    @Override
    public ArrayList EjecutarConsulta(String cadenaSQL) {

        ArrayList arry = new ArrayList();
        Connection cn;
        Statement st;
        ResultSet rs;

        try {

            ConnDB db = new ConnDB();
            Class.forName(db.getDriver());
            cn = DriverManager.getConnection(db.getCadenaCon(),db.getUsuario(),db.getContrasenna());
            st = cn.createStatement();
            rs = st.executeQuery(cadenaSQL);
            rs.beforeFirst();

            while (rs.next()) {

                arry.add(new EntityAlumno(rs.getInt("al.id_alumno"),rs.getString("al.nombre"),rs.getString("al.apellido"),rs.getString("al.carnet"),rs.getString("carre.nombre_carrera")));

            }
            rs.close();
            st.close();
            cn.close();
            db=null;


        } catch (Exception ex) {
            arry = null;
            System.out.println(ex.toString());
        }


        return arry;

    }

   
}
